#include <iostream>
#include <cmath>

int main() {
    int a;
    std::cout << "Введите 4-х значное число: ";
    std::cin >> a;

    while (a < 1000 || a > 9999) {
        std::cout << "Введённое число не является четырёхзначным: ";
        std::cin >> a;
    }

    if (a % 2 == 0) {
        std::cout << "Число чётное: Да" << std::endl;
    } else {
        std::cout << "Число чётное: Нет" << std::endl;
    }

    if (a % 3 == 0) {
        std::cout << "Число кратное трём: Да" << std::endl;
    } else {
        std::cout << "Число кратное трём: Нет" << std::endl;
    }

    if (static_cast<int>(std::sqrt(a)) * static_cast<int>(std::sqrt(a)) == a) {
        std::cout << "Число является квадратом числа: " << static_cast<int>(std::sqrt(a)) << std::endl;
    } else {
        std::cout << "Число является квадратом числа: Нет" << std::endl;
    }

    int n = a / 1000 % 10;
    int c = a / 100 % 10;
    int b = a / 10 % 10;
    int v = a % 10;

    int min = n;
    if (min > c) {
        min = c;
    }
    if (min > b) {
        min = b;
    }
    if (min > v) {
        min = v;
    }
    std::cout << "Наименьшая цифра числа: " << min << std::endl;

    int max = n;
    if (max < c) {
        max = c;
    }
    if (max < b) {
        max = b;
    }
    if (max < v) {
        max = v;
    }
    std::cout << "Наибольшая цифра числа: " << max << std::endl;

    int s = 0;
    if (n == 0) {
        s++;
    }
    if (c == 0) {
        s++;
    }
    if (b == 0) {
        s++;
    }
    if (v == 0) {
        s++;
    }
    std::cout << "Количество нулей в числе: " << s << std::endl;

    if (static_cast<int>(std::sqrt(v)) * static_cast<int>(std::sqrt(v)) == v) {
        std::cout << "Цифра в разряде единиц является квадратом цифры: " << static_cast<int>(std::sqrt(v)) << std::endl;
    } else {
        std::cout << "Цифра в разряде единиц является квадратом цифры: Нет" << std::endl;
    }

    if (static_cast<int>(std::sqrt(b)) * static_cast<int>(std::sqrt(b)) == b) {
        std::cout << "Цифра в разряде десятков является квадратом цифры: " << static_cast<int>(std::sqrt(b)) << std::endl;
    } else {
        std::cout << "Цифра в разряде десятков является квадратом цифры: Нет" << std::endl;
    }

    if (static_cast<int>(std::sqrt(c)) * static_cast<int>(std::sqrt(c)) == c) {
        std::cout << "Цифра в разряде сотен является квадратом цифры: " << static_cast<int>(std::sqrt(c)) << std::endl;
    } else {
        std::cout << "Цифра в разряде сотен является квадратом цифры: Нет" << std::endl;
    }

    if (static_cast<int>(std::sqrt(n)) * static_cast<int>(std::sqrt(n)) == n) {
        std::cout << "Цифра в разряде тысяч является квадратом цифры: " << static_cast<int>(std::sqrt(n)) << std::endl;
    } else {
        std::cout << "Цифра в разряде тысяч является квадратом цифры: Нет" << std::endl;
    }

    return 0;
}